using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using yq.IBase;
using yq.Model.Base;
using System.ComponentModel.DataAnnotations;
using System.Web.Mvc;
using cn.Util;

namespace yq.Model.Logic
{
    /// <summary>
    /// File_List - 文件信息 - 对象继承类
    /// </summary>
    [MetadataType(typeof(FileListValidaTion))]
    public class FileList : IFileList<FileList>
    {


        #region 生成实体类验证属性
        /// <summary>
        /// 辅助验证类
        /// </summary>
        [Bind]
        public class FileListValidaTion
        {



            /// <summary>
            /// 文件信息ID
            /// </summary>
            [Display(Name = "文件信息ID")]
            [StringLength(36)]
            public String FileinfoId
            {
                get;
                set;
            }





            /// <summary>
            /// 用户ID
            /// </summary>
            [Display(Name = "用户ID")]
            [StringLength(36)]
            public String UserId
            {
                get;
                set;
            }





            /// <summary>
            /// 上级文件Id
            /// </summary>
            [Display(Name = "上级文件Id")]
            [StringLength(36)]
            public String SuperiorId
            {
                get;
                set;
            }





            /// <summary>
            /// 名称
            /// </summary>
            [Display(Name = "名称")]
            [StringLength(100)]
            public String Ttile
            {
                get;
                set;
            }





            /// <summary>
            /// 类型
            /// </summary>
            [Display(Name = "类型")]
            [RegularExpression(RegularExpressionString.Int, ErrorMessage = "必须输入数字")]

            public yq.Enums.FileList.Type Type
            {
                get;
                set;
            }





            /// <summary>
            /// 路径
            /// </summary>
            [Display(Name = "路径")]
            [StringLength(500)]
            public String Path
            {
                get;
                set;
            }





            /// <summary>
            /// 是否隐藏
            /// </summary>
            [Display(Name = "是否隐藏")]
            [RegularExpression(RegularExpressionString.Int, ErrorMessage = "必须输入数字")]

            public yq.Enums.BooleanType IsHide
            {
                get;
                set;
            }





            /// <summary>
            /// 状态
            /// </summary>
            [Display(Name = "状态")]
            [RegularExpression(RegularExpressionString.Int, ErrorMessage = "必须输入数字")]

            public yq.Enums.FileList.Status Status
            {
                get;
                set;
            }





            /// <summary>
            /// 是否私用
            /// </summary>
            [Display(Name = "是否私用")]
            [RegularExpression(RegularExpressionString.Int, ErrorMessage = "必须输入数字")]

            public yq.Enums.BooleanType IsPrivate
            {
                get;
                set;
            }





            /// <summary>
            /// 是否被签出
            /// </summary>
            [Display(Name = "是否被签出")]
            [RegularExpression(RegularExpressionString.Int, ErrorMessage = "必须输入数字")]

            public yq.Enums.BooleanType IsCheckOut
            {
                get;
                set;
            }





            /// <summary>
            /// 签出人
            /// </summary>
            [Display(Name = "签出人")]
            [StringLength(36)]
            public String CheckUserId
            {
                get;
                set;
            }





            /// <summary>
            /// 签出时间
            /// </summary>
            [Display(Name = "签出时间")]

            public DateTime CheckTime
            {
                get;
                set;
            }





            /// <summary>
            /// 创建时间
            /// </summary>
            [Display(Name = "创建时间")]

            public DateTime SubmitTime
            {
                get;
                set;
            }





            /// <summary>
            /// 最新版本ID
            /// </summary>
            [Display(Name = "最新版本ID")]
            [StringLength(36)]
            public String VerId
            {
                get;
                set;
            }





        }
        #endregion 生成实体类验证属性
    }
}
